perm filename PARSE[P,JRA] blob
sn#056881 filedate 1973-08-08 generic text, type T, neo UTF8
COMMENT ⊗ VALID 00002 PAGES
RECORD PAGE DESCRIPTION
00001 00001
00002 00002 LET ST(X)={{ALT<F1>|<F2>} }MEAN PRINT(CADR X)
00004 ENDMK
⊗;
LET ST(X)={{ALT<F1>|<F2>} }MEAN PRINT(CADR X);
LET F1(*,*,F)={DSK ': <FILE>} MEAN 'DSK CONS F;
LET F2(X,Y)={<F3>{REP 0 M{'∨ <F3>}}} MEAN
BEGIN NEW J;
J←X;
FOR NEW K IN Y DO J←<CAR K,J, CADR K>;
RETURN J;
END;
LET F3(X,Y)={<F4>{REP 0 M{'∧ <F4>}}} MEAN
BEGIN NEW J;
J←X;
FOR NEW K IN Y DO J ←<CAR K, J,CADR K>;
RETURN J;
END;
LET F4(X)={{ALT ?( <ST> ?) | ?¬<F4> | <PREDIC>}} MEAN
IF X[1]=1∨X[1]=3 THEN X[2] ELSE <NOT,X[2]>;
LET PREDIC(X)={{ALT ANCESTRY | NONE | VINE | UNIT |P1 |P2
| SUPPORT <C>
| DEPTH ?[ [NUMBER] ?]
| SELDEPTH ?[ <FNLSTP> ?]
| LENGTH ?[ [NUMBER] ?]
| MODEL ?[ <PREDLST>';<PREDLST> ?]
| EQUALITY ?[<OP> '; <NUMBER> ?]
| DEMOD ?[ <CLAUSES><NUMBER> ?]
| DEFMODEL ?[ [IDENTIFIER] ?]
}}
MEAN IF X[1]=1∨X[1]=2∨X[1]=3 ∨X[1]=4 THEN X[2] ELSE IF
X[1]=5 THEN 'ALLPOS ELSE X;
LET PROGRAM(*)={<ST>';} MEAN NIL;
_EOF_